<?php

	/*
		----------------------------------
		Projet Lumina
		----------------------------------
		
		Classe DeadManager
		Hérite de la classe Manager pour se
		connecter à la base de données
		
        EL KHATIRI Safwane
		COHEN Jonathan
		2014
	*/
	
	class DeadManager extends Manager {
		
		/* ------------------------------
			Récupération d'un objet de la table dead
			de la base de données avec son identifiant
		*/
		public function getById($id) {
			$res = parent::getConnexion()->query("SELECT * FROM dead WHERE id = $id");
			if(count($res) == 0) return 0;
			$res = $res->fetch(PDO::FETCH_OBJ);
			$dead = new Dead(
				$res->id, 
				$res->last_name,
				$res->first_name,
				$res->birth_date,
				$res->death_date,
				$res->photo,
				$res->roses,
				$res->description
			);
			
			return $dead;
		}
		
		
		
		/* ------------------------------
			Récupération d'un objet de la table dead
			de la base de données avec sa date de mort
		*/
		public function getByDeathDate($death_date, $limit = NULL) {
			$query = "SELECT * FROM dead WHERE death_date = '$death_date'";
			if(!is_null($limit) && is_numeric($limit))
				$query = "SELECT * FROM dead WHERE death_date = '$death_date' LIMIT $limit";
				
			$res = parent::getConnexion()->query($query);
			$deads = array();
			while($val = $res->fetch(PDO::FETCH_OBJ)) {
				$deads[] = new Dead(
					$val->id, 
					$val->last_name,
					$val->first_name,
					$val->birth_date,
					$val->death_date,
					$val->photo,
					$val->roses,
					$val->description
				);
			}
			
			return $deads;
		}
		
		
		
		/* ------------------------------
			Ajout de $nb_roses roses à un "utilisateur" mort,
			identifié par $id.
		*/
		public function addRosesToDead($id, $nb_roses = 1) {
			$query = "UPDATE dead SET roses = roses + $nb_roses WHERE id = $id";
			return parent::getConnexion()->exec($query);
		}
	}

?>